<?php
    require_once '../JSON.php';
	require_once("../config.php");
	require_once("../utils.php");
	require_once(ROOT_DIR_CLASES.'/cConfiguracion.php');
	require_once(ROOT_DIR_CLASES.'/cLogin.php');
	require_once(ROOT_DIR_CLASES.'/cAlias.php');
	require_once(ROOT_DIR_CLASES.'/MiConfig.php');
	require_once(ROOT_DIR_CLASES.'/cAliasMobile.php');

	$args = ($_SERVER['REQUEST_METHOD'] == "POST") ? $_POST : $_GET;
    $json = new Services_JSON();
    $response = "No existe el parametro COMMAND";
	$result = array();

    if (array_key_exists('COMMAND', $args)){
		$cmd = $args['COMMAND'];
		$cuenta = $args['CUENTA'];
		$esFlota = $args['ESFLOTA'];
    	switch ($cmd) {
			case "GETCONFIG":
				$configRegistrada = cConfiguracion::getConfig($cuenta, $esFlota);
				$response = new MiConfig();
				$response->id = $configRegistrada->campo('ORDER_ID',0);
				$response->flotaId = $configRegistrada->campo('FLOTA_ID',0);
				$response->esFlota = $configRegistrada->campo('ES_FLOTA',0);
				//Historico
				$response->HIScolor = $configRegistrada->campo('HIS_color',0);
				$response->HISthickness = $configRegistrada->campo('HIS_thickness',0);
				$response->HISversentido = $configRegistrada->campo('HIS_sentido',0);
				$response->HISvelexceso = $configRegistrada->campo('HIS_exceso',0);
				$response->HISfiltrocero = $configRegistrada->campo('HIS_filtrocero',0);
				array_push($result, $response);
				break;
			case "CHANGEPASS":
				$oldpass = $args['OLDPASS'];
				$newpass = $args['NEWPASS'];
				$objetivo = $args['OBJETIVO'];
				$iTablaId = $args['TABLAID'];
				if($objetivo==4){
					$cuenta=$iTablaId;
				}
				echo cConfiguracion::changePassword($cuenta, $objetivo, $esFlota, $oldpass, $newpass);
				return;
				break;
			case "CHANGEPASSTEMPORAL":
				$newpass = $args['NEWPASS'];
				$token = $args['TOKEN'];
				$objetivo = $args['OBJETIVO'];
				echo cConfiguracion::changePasswordTemporal($cuenta, $objetivo, $esFlota, $newpass, $token);
				return;
				break;
			case "FORGOTPASS":
				$loginClass = new CLogin();
				$loginClass->objetivo = $args['OBJETIVO'];
				$loginClass->codigorc = $args['CODIGORC'];
				$loginClass->codigocuenta = $args['CODIGOCUENTA'];
				$loginClass->particion = $args['PARTICION'];
				$loginClass->email = $args['EMAIL'];
				$loginClass->codigoFlota = $args['CODIGOFLOTA'];
				$loginClass->alias = $args['ALIASSTRING'];
				$loginClass->codigoDealer = $args['CODIGODEALER'];
				$response = cConfiguracion::RememberPasswordAbstracto($loginClass);
				array_push($result, $response);
				break;
			case "MISALIAS":
				    $objetivo = $args['OBJETIVO'];
					$misAlias = cConfiguracion::getMisAlias($cuenta, $objetivo);
					for ($i=0; $i<$misAlias->cantidad(); $i++){
						$alias = new CAlias();
						$alias->id = $misAlias->campo('id',$i);
						$alias->nombre = $misAlias->campo('nombre',$i);
						$alias->cuentaFk = $misAlias->campo('cuentaFk',$i);
						$alias->esFlota = $misAlias->campo('esFlota',$i);
						$alias->mail = $misAlias->campo('mail',$i);
						$alias->alias = $misAlias->campo('alias',$i);
						$alias->habilitado = $misAlias->campo('habilitado',$i);
						$movilesAlias = cConfiguracion::getCuentasByAlias($alias->id,2);
						for ($j = 0; $j < $movilesAlias->cantidad(); $j++){
							$alias->putMovil($movilesAlias->campo('iCuentaId',$j));
						}
						if($esFlota == 5){
							$vFlotasAlias = cConfiguracion::getFlotasByAlias($alias->id);
							for ($j = 0; $j < $vFlotasAlias->cantidad(); $j++){
								$alias->putFLOTA($vFlotasAlias->campo('iFlotaId',$j));
							}
							$vRCAlias = cConfiguracion::getRCByAlias($alias->id,2);
							for ($j = 0; $j < $vRCAlias->cantidad(); $j++){
								$alias->putRC($vRCAlias->campo('iEmpresaId',$j));
							}

							$vRCFijosAlias = cConfiguracion::getRCByAlias($alias->id,1);
							for ($j = 0; $j < $vRCFijosAlias->cantidad(); $j++){
								$alias->putRCFijo($vRCFijosAlias->campo('iEmpresaId',$j));
							}
							$vFijosAlias = cConfiguracion::getCuentasByAlias($alias->id,1);
							for ($j = 0; $j < $vFijosAlias->cantidad(); $j++){
								$alias->putFijo($vFijosAlias->campo('iCuentaId',$j));
							}
						}elseif($objetivo==1){
							$vFijosAlias = cConfiguracion::getCuentasByAlias($alias->id,1);
							for ($j = 0; $j < $vFijosAlias->cantidad(); $j++){
								$alias->putFijo($vFijosAlias->campo('iCuentaId',$j));
							}
						}
						$iMonitorea 	= $misAlias->campo('permisoMonitor', $i);
						$iComandosGPRS 	= $misAlias->campo('permisoComandosGPRS', $i);
						$iComandosSMS 	= $misAlias->campo('permisoComandosSMS', $i);
						$iVerReportes 	= $misAlias->campo('permisoVerReportes', $i);
						$iVerPuntos 	= $misAlias->campo('permisoVerPuntos', $i);
						$iVerZonas 		= $misAlias->campo('permisoVerZonas', $i);
						$iVerContactos 	= $misAlias->campo('permisoVerContactos', $i);
						$iVerLogistica 	= $misAlias->campo('permisoVerLogistica', $i);
				     	$iModificaPuntos= $misAlias->campo('permisoModificarPuntos', $i);
				     	$iModificaZonas	= $misAlias->campo('permisoModificarZonas', $i);
						$iModificaContactos	= $misAlias->campo('permisoModificarContactos', $i);
						$iModificarLogistica= $misAlias->campo('permisoModificarLogistica', $i);
						$iAccessMovil	= $misAlias->campo('permisoMobile', $i);
						$iAccedeSetup	= $misAlias->campo('permisoAccedeSetup', $i);
						$iAccedeEventos = $misAlias->campo('permisoAccedeEventos', $i);
						$iAccedeUsuario = $misAlias->campo('permisoAccedeUsuarios', $i);
				     	$iAccedeFacturas= $misAlias->campo('permisoAccedeFacturas', $i);
						$iAccedeZonas	= $misAlias->campo('permisoAccedeZonas', $i);
						$iAccedeContactos	= $misAlias->campo('permisoAccedeContactos', $i);
						$iAccedeHorarios= $misAlias->campo('permisoAccedeHorarios', $i);
						$iHabilitaFijo 	= $misAlias->campo('habilitarFijo', $i);
						$iHabilitaMovil = $misAlias->campo('habilitarMovil', $i);
						$iHabilitaFlota = $misAlias->campo('habilitarFlota', $i);
						$iHabilitaRC	= $misAlias->campo('habilitarRC', $i);
						$iHabilitaRCFijo= $misAlias->campo('habilitarRCFijo', $i);
						$iVerRutas		= $misAlias->campo('permisoVerRutas', $i);
						$iModificarRutas= $misAlias->campo('permisoModificarRutas', $i);
						$iVerAgendaGral = $misAlias->campo('permisoVerAgendaGral', $i);
						$iModificaAgendaGral= $misAlias->campo('permisoModificaAgendaGral', $i);
						$alias->vPermisos = array($iMonitorea,$iComandosGPRS,$iComandosSMS,$iVerReportes,$iVerPuntos,$iVerZonas,$iVerContactos,$iVerLogistica,
											$iModificaPuntos,$iModificaZonas,$iModificaContactos,$iModificarLogistica,$iAccessMovil,$iAccedeSetup,$iAccedeEventos,$iAccedeUsuario,
											$iAccedeFacturas,$iAccedeZonas,$iAccedeContactos,$iAccedeHorarios,$iHabilitaFijo,$iHabilitaMovil,$iHabilitaFlota,
											$iHabilitaRC,$iHabilitaRCFijo,$iVerRutas,$iModificarRutas,$iVerAgendaGral,$iModificaAgendaGral);
						array_push($result, $alias);
					}
					break;
			case "SAVEORUPDATEALIAS":
				$objetivo = $args['OBJETIVO'];
				$alias 			= new CAlias();
				$alias->id 		= $args['ID'];
				$alias->nombre 	= $args['NOMBRE'];
				$alias->cuentaFk= $cuenta;
				$alias->esFlota	= $objetivo;
				$alias->mail 	= $args['MAIL'];
				$alias->alias 	= $args['ALIAS'];
				$alias->clave 	= trim($args['CLAVE']);
				$habilitarFijo 	= $args['habilitarFijo'];
				$habilitarMovil = $args['habilitarMovil'];
				$habilitarFlota = $args['habilitarFlota'];
				$habilitarRC 	= $args['habilitarRC'];
				$habilitarRCFijo= $args['habilitarRCFijo'];
				$habilitado		= $args['habilitado'];
				$alias->habilitado = $habilitado;
				if (trim($args['MOVILES']) != '') {
					$MOVILES =  split(',',$args['MOVILES']);
					for ($i=0; $i < count($MOVILES); $i++)
						$alias->putMovil($MOVILES[$i]);
				}
				if (trim($args['RCS']) != '') {
					$RCS =  split(',',$args['RCS']);
					for ($i=0; $i < count($RCS); $i++){
						$alias->putRC($RCS[$i]);
					}
				}
				if (trim($args['FLOTAS']) != '') {
					$FLOTAS =  split(',',$args['FLOTAS']);
					for ($i=0; $i < count($FLOTAS); $i++){
						$alias->putFLOTA($FLOTAS[$i]);
					}
				}
				if (trim($args['RCFIJOS']) != '') {
					$RCSFIJOS =  split(',',$args['RCFIJOS']);
					for ($i=0; $i < count($RCSFIJOS); $i++){
						$alias->putRCFijo($RCSFIJOS[$i]);
					}
				}
				if (trim($args['FIJOS']) != '') {
					$FIJOS=  split(',',$args['FIJOS']);
					for ($i=0; $i < count($FIJOS); $i++){
						$alias->putFijo($FIJOS[$i]);
					}
				}
				if (trim($args['PERMISOS']) != ''){
					$vPermisos=  split(',',$args['PERMISOS']);
					for ($i=0; $i < count($vPermisos); $i++){
						//$alias->putFijo($vPermisos[$i]);
						$PERMISOS[$vPermisos[$i]] = 1;
					}
				}
				for($i=0;$i<=19;$i++){//seteo los permisos que faltan en 0
					if(!array_key_exists($i,$PERMISOS)){
						$PERMISOS[$i] = 0;
					}
				}
				$PERMISOS[20]	= $habilitarFijo;
				$PERMISOS[21]	= $habilitarMovil;
				$PERMISOS[22]	= $habilitarFlota;
				$PERMISOS[23]	= $habilitarRC;
				$PERMISOS[24]	= $habilitarRCFijo;

    			for($i=25;$i<=28;$i++){//seteo los permisos que faltan en 0
					if(!array_key_exists($i,$PERMISOS)){
						$PERMISOS[$i] = 0;
					}
				}
				
				ksort($PERMISOS);
				$alias->vPermisos = $PERMISOS;

				//print_r($PERMISOS);exit;

				$response = cConfiguracion::saveOrUpdateAlias($alias);
				array_push($result, $response);
				break;
			case "DELETEALIAS":
				$selectedId = $args['SELECTEDID'];
				$response = cConfiguracion::deleteAlias($selectedId);
				array_push($result, $response);
				break;
			case "BLANQUEARALIAS":
				$selectedId = $args['SELECTEDID'];
				$response = cConfiguracion::blanquearAlias($selectedId);
				array_push($result, $response);
				break;
			case "CHANGEHISTORICO":
    			$iObjetivo = $args['OBJETIVO'];
    			if($iObjetivo == 4){
					$cuenta	= $args['TABLAID'];
					$esFlota = $iObjetivo;
				}
			    $configId = $args['CONFIGID'];
				$newcolor = $args['COLOR'];
				$thickness = $args['THICKNESS'];
				$versentido = $args['VERSENTIDO'];
				$velexceso = $args['EXCESO'];
				$filtrocero = $args['FILTROCERO'];
				$response = cConfiguracion::changeHistorico($configId, $cuenta, $esFlota, $newcolor, $thickness, $versentido, $velexceso, $filtrocero);
				array_push($result, $response);
				break;
			case "CHANGEPUNTOS":
				$iObjetivo = $args['OBJETIVO'];
    			if($iObjetivo == 4){
					$cuenta	= $args['TABLAID'];
				}
				$puntosId = $args['PUNTOSID'];
				$response = cConfiguracion::changePuntos($cuenta, $iObjetivo, $puntosId);
				array_push($result, $response);
				break;
			case "CHANGEZONAS":
				$iObjetivo = $args['OBJETIVO'];
    			if($iObjetivo == 4){
					$cuenta	= $args['TABLAID'];
				}
				$zonasId = $args['ZONASID'];
				$response = cConfiguracion::changeZonas($cuenta, $iObjetivo, $zonasId);
				array_push($result, $response);
				break;
			case "CHANGEEVENTOSMOVILES":
				$movil			= $args['MOVIL'];
				$objetivo 		= $args['OBJETIVO'];
				$tablaId 		= $args['TABLAID'];
				$mailEventoMovil= $args['MAILEVENTOMOVIL'];
				
				$selectedId 	= $args['SELECTEDID'];
				$deselectedId 	= $args['DESELECTEDID'];
				$response 		= cConfiguracion::changeEventos($movil, $objetivo, $selectedId, $deselectedId, 1);
				
				$selectedPuntoSeguroId 	= $args['SELECTEDPUNTOSEGUROID'];
				$deselectedPuntoSeguroId= $args['DESELECTEDPUNTOSEGUROID'];
				$response 		= cConfiguracion::changeEventos($movil, $objetivo, $selectedPuntoSeguroId, $deselectedPuntoSeguroId, 3);
				
				$selectedMailId = $args['SELECTEDMAILID'];
				$deselectedMailId = $args['DESELECTEDMAILID'];
				$response = cConfiguracion::changeEventos($movil, $objetivo, $selectedMailId, $deselectedMailId, 4,$tablaId);
								
				array_push($result, $response);

				$response = cConfiguracion::saveMailEventMovil($movil, $mailEventoMovil);
				
				break;
			case "CHANGEEVENTOSALLMOVILES":
				$movil			= $args['MOVIL'];
				$objetivo 		= $args['OBJETIVO'];
				$tablaId 		= $args['TABLAID'];
				
				$mailEventoMovil= $args['MAILEVENTOMOVIL'];
				
				$selectedId 	= $args['SELECTEDID'];
				$deselectedId 	= $args['DESELECTEDID'];
				$response 		= cConfiguracion::changeEventsByAllMoviles($movil, $objetivo, $selectedId, $deselectedId, 1);
				
				$selectedPuntoSeguroId 	= $args['SELECTEDPUNTOSEGUROID'];
				$deselectedPuntoSeguroId= $args['DESELECTEDPUNTOSEGUROID'];
				$response 		= cConfiguracion::changeEventsByAllMoviles($movil, $objetivo, $selectedPuntoSeguroId, $deselectedPuntoSeguroId, 3);
				
				$selectedMailId = $args['SELECTEDMAILID'];
				$deselectedMailId = $args['DESELECTEDMAILID'];
				$response = cConfiguracion::changeEventsByAllMoviles($movil, $objetivo, $selectedMailId, $deselectedMailId, 4,$tablaId);
				
				array_push($result, $response);
				$response = cConfiguracion::saveMailEventMovil($movil, $mailEventoMovil);
				
				break;
			case "CHANGEEVENTOS":
				$objetivo = $args['OBJETIVO'];
				$configId = $args['CONFIGID'];
				$emailAlertaEventos = $args['EMAILALERTAEVENTOS'];
				$response = cConfiguracion::changeEmailConfig($configId, $cuenta, $objetivo, $emailAlertaEventos);
				/*
				$selectedId = $args['SELECTEDID'];
				$deselectedId = $args['DESELECTEDID'];
				$response = cConfiguracion::changeEventos($cuenta, $objetivo, $selectedId, $deselectedId, 1);
				*/
				$selectedUniversoId = $args['SELECTEDUNIVERSOID'];
				$deselectedUniversoId = $args['DESELECTEDUNIVERSOID'];
				$response = cConfiguracion::changeEventos($cuenta, $objetivo, $selectedUniversoId, $deselectedUniversoId, 2);
				/*
				$selectedPuntoSeguroId = $args['SELECTEDPUNTOSEGUROID'];
				$deselectedPuntoSeguroId = $args['DESELECTEDPUNTOSEGUROID'];
				$response = cConfiguracion::changeEventos($cuenta, $objetivo, $selectedPuntoSeguroId, $deselectedPuntoSeguroId, 3);

				$selectedMailId = $args['SELECTEDMAILID'];
				$deselectedMailId = $args['DESELECTEDMAILID'];
				$response = cConfiguracion::changeEventos($cuenta, $objetivo, $selectedMailId, $deselectedMailId, 4);
				*/

				array_push($result, $response);
				break;
			case "DELETERESOLUCIONES":
				$selectedId = $args['SELECTEDID'];
				echo cConfiguracion::deleteResoluciones($selectedId);
				return;
			case "DELETECOMANDOS":
				$selectedId = $args['SELECTEDID'];
				echo cConfiguracion::deleteComandos($selectedId);
				return;
			case "SAVEORUPDATERESOLUCION":
				$id = $args['ID'];
				$nombre = $args['NOMBRE'];
				$descripcion = $args['DESCRIPCION'];
				echo cConfiguracion::saveOrUpdateResolucion($id, $nombre, $descripcion, $cuenta, $esFlota);
				return;
			case "SAVEORUPDATECOMANDO":
    			$iObjetivo = $args['OBJETIVO'];
    			if($iObjetivo == 4){
					$cuenta	= $args['TABLAID'];
					$esFlota = $iObjetivo;
				}
				$id = $args['ID'];
				$comando = $args['COMANDO'];
				$descripcion = $args['DESCRIPCION'];
				echo cConfiguracion::saveOrUpdateComando($id, $comando, $descripcion, $cuenta, $esFlota);
				return;

			case "CHANGEVEHICULOS":
    			$iObjetivo = $args['OBJETIVO'];
    			if($iObjetivo == 4){
					$cuenta	= $args['TABLAID'];
					$esFlota = $iObjetivo;
				}
				$configId = $args['CONFIGID'];
				$labelFMT = $args['LBLFORMAT'];
				$labelFMTReduce = $args['LBLFORMATREDUCE'];
				$timeOut = $args['CMDTIMEOUT'];
				$tipoVista = $args['TIPOVISTA'];
				$fuenteReduce = $args['FUENTEREDUCE'];
				$radioReduce = $args['RADIOREDUCE'];
				$transparenciaReduce = $args['TRANSPARENCIAREDUCE'];
				$colorReduce = $args['COLORREDUCE'];
				$response = cConfiguracion::saveOrUpdateMovilLbl($configId, $cuenta, $iObjetivo, $labelFMT, $labelFMTReduce, $timeOut, $tipoVista, $fuenteReduce, $radioReduce, $transparenciaReduce, $colorReduce);
				array_push($result, $response);
				break;
			case "CHANGEFIJOS":
    			$iObjetivo = $args['OBJETIVO'];
    			if($iObjetivo == 4){
					$cuenta	= $args['TABLAID'];
					$esFlota = $iObjetivo;
				}
				$configId = $args['CONFIGID'];
				$labelFMT = $args['LBLFORMAT'];
				$labelFMTReduce = $args['LBLFORMATREDUCE'];
				$timeOut = $args['CMDTIMEOUT'];
				$tipoVista = $args['TIPOVISTA'];
				$fuenteReduce = $args['FUENTEREDUCE'];
				$radioReduce = $args['RADIOREDUCE'];
				$transparenciaReduce = $args['TRANSPARENCIAREDUCE'];
				$colorReduce = $args['COLORREDUCE'];
				$response = cConfiguracion::saveOrUpdateFijoLbl($configId, $cuenta, $iObjetivo, $labelFMT, $labelFMTReduce, $timeOut, $tipoVista, $fuenteReduce, $radioReduce, $transparenciaReduce, $colorReduce);
				array_push($result, $response);
				break;
			case "MOBILE":
				$objetivo 	= $args['OBJETIVODB'];
				$iTablaId 	= $args['TABLAID'];
				$iObjetivo 	= $args['OBJETIVO'];
				if($iObjetivo == 4){
					$cuenta		= $iTablaId;
					$objetivo 	= $iObjetivo;
				}
				$resultado 	= cConfiguracion::getAliasPhone($cuenta, $objetivo);
				if($resultado->cantidad() > 0){
					$aliasMobile 			= new CAliasMobile();
					$aliasMobile->alias 	= $resultado->campo('alias', 0);
					$aliasMobile->id 		= $resultado->campo('id', 0);
					$aliasMobile->objetivo 	= $resultado->campo('objetivo', 0);
					$aliasMobile->maptype 	= $resultado->campo('maptype', 0);
					$aliasMobile->zoom 		= $resultado->campo('zoom', 0);
					array_push($result, $aliasMobile);
				}
				break;
			case "SAVEMOBILE":
				$objetivo 	= $args['OBJETIVODB'];
				$iTablaId	= $args['TABLAID'];
				$iObjetivo 	= $args['OBJETIVO'];
				if($iObjetivo==4){
					$cuenta		= $iTablaId;
					$objetivo 	= $iObjetivo;
				}
				$alias 		= $args['ALIAS'];
				$zoom 		= $args['ZOOM'];
				$maptype 	= $args['MAPTYPE'];
				$changePass = $args['CHANGEPASS'];
				$clave 		= $args['CLAVE'];
				echo cConfiguracion::saveOrUpdateAliasPhone($cuenta, $objetivo, $alias, $zoom, $maptype, $changePass, $clave);
				return;
			case "GUARDARCONFIGMAPA":
				$objetivo 	= $args['OBJETIVO'];
				$cuentaId	= $args['CUENTAID'];
				$mapaId 	= $args['MAPAID'];
				$listaVehiculos 	= $args['VEHICULOS'];
				$vList =  explode(",",$listaVehiculos);
				  
				$listaFijos	= $args['FIJOS'];
				$vListFijos =  explode(",",$listaFijos);
				  
				$listaPuntos= $args['PUNTOS'];
				$listaZonas	= $args['ZONAS'];
				$monitoreados		= $args['MONITOREADOS'];
				$fijosMonitoreados	= $args['FIJOSMONITOREADOS'];
				$seleccion			= $args['SELECCION'];
				$seguimiento		= $args['SEGUIMIENTO'];
		    	if($monitoreados){
			    	$vMonitoreados = explode(",",$monitoreados);
			    	 foreach($vMonitoreados as $movil){
				    	if(!in_array($movil,$vList)){
				    	 	$listaVehiculos .= ",".$movil;
			    		}
			    	 }
			    }
		    	if($fijosMonitoreados){
			    	$vFijosMonitoreados = explode(",",$fijosMonitoreados);
			    	 foreach($vFijosMonitoreados as $fijos){
				    	if(!in_array($fijos,$vListFijos)){
				    	 	$listaFijos .= ",".$fijos;
			    		}
			    	 }
			    }
				$result 	= cConfiguracion::guardarConfMapa($mapaId,$cuentaId,$objetivo,$listaVehiculos,$listaFijos,$listaPuntos,$listaZonas,$monitoreados,$seleccion,$seguimiento,$fijosMonitoreados);
				break;
			case "GUARDARCONFCANTMAPAS":
				$objetivo 	= $args['OBJETIVO'];
				$cuentaId	= $args['CUENTAID'];
				$mapasId 	= $args['MAPASID'];
				$result 	= cConfiguracion::guardarConfCantidadMapa($mapasId,$cuentaId,$objetivo);
				break;
			case "GETCONFIGMAPA":
				$objetivo 	= $args['OBJETIVO'];
				$cuentaId	= $args['CUENTAID'];
				$mapaId 	= $args['MAPAID'];
				
				$resultado 	= cConfiguracion::getConfMapaByMap($mapaId,$cuentaId,$objetivo);
				if($resultado->cantidad() > 0){
					for ($i=0; $i < $resultado->cantidad(); $i++){
						$obj			= new stdClass();
						$obj->mapa 		= $resultado->campo('Mapa', $i);
						$obj->cuenta	= $resultado->campo('Cuenta', $i);
						$obj->objetivo 	= $resultado->campo('Obj', $i);
						$obj->id	 	= $resultado->campo('Id', $i);
						$obj->tipo		= $resultado->campo('Tipo', $i);
						$obj->monitoreado	= $resultado->campo('Monitoreado', $i);
						$obj->seleccion		= $resultado->campo('Seleccion', $i);
						$obj->seguimiento	= $resultado->campo('Seguimiento', $i);
						array_push($result, $obj);
					}
				}
				break;
			case "GETCONFIGCANTIDADMAPA":
				$objetivo 	= $args['OBJETIVO'];
				$cuentaId	= $args['CUENTAID'];
				
				$resultado 	= cConfiguracion::getConfCantidadMapas($cuentaId,$objetivo);
				if($resultado->cantidad() > 0){
					for ($i=0; $i < $resultado->cantidad(); $i++){
						$obj			= new stdClass();
						$obj->mapa 		= $resultado->campo('Mapa', $i);
						$obj->cuenta	= $resultado->campo('Cuenta', $i);
						$obj->objetivo 	= $resultado->campo('Obj', $i);
						array_push($result, $obj);
					}
				}
				break;
			case "SAVEREPORTES":
				$objetivo 	= $args['OBJETIVO'];
				$cuentaId	= $args['CUENTAID'];
				$moviles	= $args['MOVILES'];
				$tipoEvento = $args['TIPOEVENTO'];
				$ultimos	= $args['ULTIMOS'];
				$tipoReporte= $args['TIPOREPORTE'];
				$reporteId	= $args['ID'];
				$descripcion= $args['DESCRIPCION'];
				$estadoEvento   = $args['ESTADOEVENTO'];
				$tiempoDetenido	= $args['TIEMPODETENIDO'];
				echo cConfiguracion::saveReportes($cuentaId,$objetivo,$moviles,$tipoEvento,$ultimos,$tipoReporte,$reporteId,$descripcion,$estadoEvento,$tiempoDetenido);
				return;
				break;
			case "DELETEREPORTE":
				$objetivo 	= $args['OBJETIVO'];
				$cuentaId	= $args['CUENTAID'];
				$reporteId	= $args['REPORTEID'];
				echo cConfiguracion::deleteReporte($reporteId,$cuentaId,$objetivo);
				return;
				break;
			case "GETREPORTES":
				$objetivo 	= $args['OBJETIVO'];
				$cuentaId	= $args['CUENTAID'];
				$reporteId	= $args['REPORTEID'];
				$onlyConfig	= $args['ONLYCONFIG'];//si esta en 1 toma solo los que estan configurados con un periodo.
				if(!$reporteId){
					$reporteId = "";
				}
				$tipoReporte = $args['TIPOREPORTE'];
				$resultado  = cConfiguracion::getReportes($cuentaId,$objetivo,$reporteId,$tipoReporte,$onlyConfig);
    			if($resultado->cantidad() > 0){
					for ($i=0; $i < $resultado->cantidad(); $i++){
						$obj			= new stdClass();
						$obj->id 		= $resultado->campo('id', $i);
						$obj->descripcion 		= $resultado->campo('descripcion', $i);
						$obj->cuenta	= $resultado->campo('cuentaId', $i);
						$sMoviles		= $resultado->campo('movilesId', $i);
						$vMoviles		= explode(",",$sMoviles);
						$obj->movilesIds= $vMoviles;
						$obj->tipoEvento= $resultado->campo('tipoEvento', $i);
						$obj->ultimos 	= $resultado->campo('ultimos', $i);
						$obj->tipoReporte= $resultado->campo('tipoReporte', $i);
						$obj->fecha		= $resultado->campo('fecha', $i);
						$obj->confPeriodo= $resultado->campo('conf_periodo', $i);
						$obj->confHora	= $resultado->campo('conf_hora', $i);
						$obj->ultimo_envio	= $resultado->campo('ultimo_envio', $i);
						$obj->cantidadDias	= $resultado->campo('cantidad_dias', $i);
						$obj->columnasDin	= $resultado->campo('columnas_din', $i);
						$obj->exportacion	= $resultado->campo('exportacion', $i);
						$obj->detalleReporte	= $resultado->campo('detalleReporte', $i);
						$obj->excesoVelocidad	= $resultado->campo('excesoVelocidad', $i);
						$obj->estadoEvento	= $resultado->campo('estadoEvento', $i);
						$obj->tiempoDetenido	= $resultado->campo('tiempoDetenido', $i);
						$obj->comentariosEventos= $resultado->campo('comentariosEventos', $i);
						array_push($result, $obj);
					}
				}
				break;
			case "SAVECONFIGREPORTE":
				$labelCuenta= $args['LABELCUENTA'];
				$objetivo 	= $args['OBJETIVO'];
				$cuentaId	= $args['CUENTAID'];
				$reporteId	= $args['REPORTEID'];
				$tipoReporte= $args['TIPOREPORTE'];
				$periodo	= $args['PERIODO'];
				$hora		= $args['HORA'];
				$columnasDin  = $args['COLUMNASDIN'];
				$cantidadDias = (int)$args['CANTIDADDIAS'];
				$nombreReporte= $args['NOMBREREPORTE'];
				$configDetalle= $args['CONFIGDETALLE'];
				$configExportacion	= $args['CONFIGEXPORTACION'];
				$excesoVelocidad	= (int)$args['EXCESOVELOCIDAD'];
				$movilesId	= $args['movilesId'];
				$estadoEventos	= $args['estadoEventos'];
				$tiempoDetenido	= (int)$args['TIEMPODETENIDO'];
				$tipoEvento = $args['TIPOEVENTO'];
				if(is_int($args['ULTIMOS'])){
					$ultimos	= $args['ULTIMOS'];
				}else{
					$ultimos	= "";
				}
				$verComentarios = "";
				if($args['VERCOMENTARIOSEVENTO']!=""){ 
					$verComentarios	= ($args['VERCOMENTARIOSEVENTO']=="true" ? "1":"0");
				}
				if($hora!=""){
					$vHora		= explode(":",$hora); 	
					if($vHora[0]>0 && $vHora[0]<24){
						if($vHora[1]<0 || $vHora[1]>59){
		    				echo false;
	    					return;
	    					break;
						}
	    			}else{
	    				echo false;
	    				return;
	    				break;
	    			}
				}
				
				echo cConfiguracion::saveConfiguracionReporte($cuentaId,$objetivo,$tipoReporte,$reporteId,$periodo,$hora,$columnasDin,
					$cantidadDias,$nombreReporte,$configDetalle,$configExportacion,$excesoVelocidad,$verComentarios,$movilesId,
					$estadoEventos,$tiempoDetenido,$ultimos,$tipoEvento,$labelCuenta);
				return;
				break;
			case "ELIMINAREVENTOSMOVILES":
				$cuentaId	= $args['CUENTA'];
				echo cConfiguracion::eliminarEventosMoviles($cuentaId);
				return;				
				break;
			case "GETCONFIGTIPS":
				$objetivo 	= $args['OBJETIVO'];
				$cuentaId	= $args['CUENTAID'];
				$resultado  = cConfiguracion::getTipsConfig();
    			if($resultado->cantidad() > 0){
					for ($i=0; $i < $resultado->cantidad(); $i++){
						$obj			= new stdClass();
						$obj->activo	= $resultado->campo('activo', $i);
						$obj->automatico= $resultado->campo('automatico', $i);
						$obj->velocidad	= $resultado->campo('velocidad', $i);
						$obj->numerico	= $resultado->campo('numerico', $i);
						$obj->vertical	= $resultado->campo('vertical', $i);
						$obj->pausa		= $resultado->campo('pausa', $i);
						$obj->continuo	= $resultado->campo('continuo', $i);
						array_push($result, $obj);
					}
				}
				break;
			case "GETTIPS":
				$resultado  = cConfiguracion::getTips();
    			if($resultado->cantidad() > 0){
					for ($i=0; $i < $resultado->cantidad(); $i++){
						$obj		= new stdClass();
						$obj->id	= $resultado->campo('id', $i);
						$obj->descripcion= $resultado->campo('descripcion', $i);
						$obj->activo= $resultado->campo('activo', $i);
						array_push($result, $obj);
					}
				}
				break;
			case "GETCOLUMNASDINAMICAS":
				$resultado  = cConfiguracion::getColumnasDinamicas();
    			if($resultado->cantidad() > 0){
					for ($i=0; $i < $resultado->cantidad(); $i++){
						$obj		= new stdClass();
						$obj->id	= $resultado->campo('id', $i);
						$obj->columna= $resultado->campo('columna', $i);
						array_push($result, $obj);
					}
				}
				break;
			case "MAILSEVENTOMOVIL":
				$movilId	= $args['MOVIL'];
				$resultado 	= cConfiguracion::getMailsEventoMovil($movilId);
    			if($resultado->cantidad() > 0){
					$mail	= $resultado->campo('ALERTA_MAIL_EVENTOS', 0);
					array_push($result, $mail);
				}
				break;
			case "VERIFICARALIAS":
				$alias		= $args['ALIAS'];
				$tablaId	= $args['TABLAID'];
				$objetivo	= $args['OBJETIVO'];
				echo $resultado 	= cConfiguracion::verficarAlias($alias);
				return;
				break;
			case "CANTIDADCUENTASPRO":
				$resultado 	= cConfiguracion::cantidadCuentasPro();
    			if($resultado->cantidad() > 0){
					for ($i=0; $i < $resultado->cantidad(); $i++){
						$obj			= new stdClass();
						$obj->id		= $resultado->campo('id', $i);
						$obj->objetivo  = $resultado->campo('objetivo', $i);
						$obj->objetivoDB= $resultado->campo('objetivoDB', $i);
						array_push($result, $obj);
					}
				}
				break;
			default:
				array_push($result, $response);
    	}
	}
    $res = $json->encode($result);
    header('Content-Type: text/plain');
    echo $res;
?>